// noinspection JSUnresolvedReference /** * Field Google Map */ /* global jQuery, document, redux_change, redux, google */ (function ( $ ) { 'use strict'; redux.field_objects = redux.field_objects || {}; redux.field_objects.google_maps = redux.field_objects.google_maps || {}; /* LIBRARY INIT */ redux.field_objects.google_maps.init = function ( selector ) { if ( ! selector ) { selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-google_maps:visible' ); } $( selector ).each( function ( i ) { let delayRender; const el = $( this ); let parent = el; if ( ! el.hasClass( 'redux-field-container' ) ) { parent = el.parents( '.redux-field-container:first' ); } if ( parent.is( ':hidden' ) ) { return; } if ( parent.hasClass( 'redux-field-init' ) ) { parent.removeClass( 'redux-field-init' ); } else { return; } // Check for delay render, which is useful for calling a map // render after JavaScript load. delayRender = Boolean( el.find( '.redux_framework_google_maps' ).data( 'delay-render' ) ); // API Key button. redux.field_objects.google_maps.clickHandler( el ); // Init our maps. redux.field_objects.google_maps.initMap( el, i, delayRender ); } ); }; /* INIT MAP FUNCTION */ redux.field_objects.google_maps.initMap = async function ( el, idx, delayRender ) { let delayed; let scrollWheel; let streetView; let mapType; let address; let defLat; let defLong; let defaultZoom; let mapOptions; let geocoder; let g_autoComplete; let g_LatLng; let g_map; let noLatLng = false; // Pull the map class. const mapClass = el.find( '.redux_framework_google_maps' ); const containerID = mapClass.attr( 'id' ); const autocomplete = containerID + '_autocomplete'; const canvas = containerID + '_map_canvas'; const canvasId = $( '#' + canvas ); const latitude = containerID + '_latitude'; const longitude = containerID + '_longitude'; // Add map index to data attr. // Why, say we want to use delay_render, // and want to init the map later on. // You'd need the index number in the // event of multiple map instances. // This allows one to retrieve it // later. $( mapClass ).attr( 'data-idx', idx ); if ( true === delayRender ) { return; } // Map has been rendered, no need to process again. if ( $( '#' + containerID ).hasClass( 'rendered' ) ) { return; } // If a map is set to delay render and has been initiated // from another scrip, add the 'render' class so rendering // does not occur. // It messes things up. delayed = Boolean( mapClass.data( 'delay-render' ) ); if ( true === delayed ) { mapClass.addClass( 'rendered' ); } // Create the autocomplete object, restricting the search // to geographical location types. g_autoComplete = await google.maps.importLibrary( 'places' ); g_autoComplete = new google.maps.places.Autocomplete( document.getElementById( autocomplete ), {types: ['geocode']} ); // Data bindings. scrollWheel = Boolean( mapClass.data( 'scroll-wheel' ) ); streetView = Boolean( mapClass.data( 'street-view' ) ); mapType = Boolean( mapClass.data( 'map-type' ) ); address = mapClass.data( 'address' ); address = decodeURIComponent( address ); address = address.trim(); // Set default Lat/lng. defLat = canvasId.data( 'default-lat' ); defLong = canvasId.data( 'default-long' ); defaultZoom = canvasId.data( 'default-zoom' ); // Eval whether to set maps based on lat/lng or address. if ( '' !== address ) { if ( '' === defLat || '' === defLong ) { noLatLng = true; } } else { noLatLng = false; } // Can't have empty values, or the map API will complain. // Set default for the middle of the United States. defLat = defLat ? defLat : 39.11676722061108; defLong = defLong ? defLong : -100.47761000000003; if ( noLatLng ) { // If displaying a map based on an address. geocoder = new google.maps.Geocoder(); // Set up Geocode and pass address. geocoder.geocode( {'address': address}, function ( results, status ) { let latitude; let longitude; // Function results. if ( status === google.maps.GeocoderStatus.OK ) { // A good address was passed. g_LatLng = results[0].geometry.location; // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); // Get and set lat/long data. latitude = el.find( '#' + containerID + '_latitude' ); latitude.val( results[0].geometry.location.lat() ); longitude = el.find( '#' + containerID + '_longitude' ); longitude.val( results[0].geometry.location.lng() ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } else { // No data found, alert the user. alert( 'Geocode was not successful for the following reason: ' + status ); } } ); } else { // If displaying map based on an lat/lng. g_LatLng = new google.maps.LatLng( defLat, defLong ); // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, // Start off far unless an item is selected, set by php. streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create the map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } }; redux.field_objects.google_maps.renderControls = function ( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ) { let markerTooltip; let infoWindow; let g_marker; let geoAlert = mapClass.data( 'geo-alert' ); // Get HTML. const input = document.getElementById( autocomplete ); // Set objects into the map. g_map.controls[google.maps.ControlPosition.TOP_LEFT].push( input ); // Bind objects to the map. g_autoComplete = new google.maps.places.Autocomplete( input ); g_autoComplete.bindTo( 'bounds', g_map ); // Get the marker tooltip data. markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Create infoWindow. infoWindow = new google.maps.InfoWindow(); // Create marker. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), draggable: true, title: markerTooltip, animation: google.maps.Animation.DROP } ); geoAlert = decodeURIComponent( geoAlert ); // Place change. google.maps.event.addListener( g_autoComplete, 'place_changed', function () { let place; let address; let markerTooltip; infoWindow.close(); // Get place data. place = g_autoComplete.getPlace(); // Display alert if something went wrong. if ( ! place.geometry ) { window.alert( geoAlert ); return; } console.log( place.geometry.viewport ); // If the place has a geometry, then present it on a map. if ( place.geometry.viewport ) { g_map.fitBounds( place.geometry.viewport ); } else { g_map.setCenter( place.geometry.location ); g_map.setZoom( 17 ); // Why 17? Because it looks good. } markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Set the marker icon. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), title: markerTooltip, clickable: true, draggable: true, animation: google.maps.Animation.DROP } ); // Set marker position and display. g_marker.setPosition( place.geometry.location ); g_marker.setVisible( true ); // Form array of address components. address = ''; if ( place.address_components ) { address = [( place.address_components[0] && place.address_components[0].short_name || '' ), ( place.address_components[1] && place.address_components[1].short_name || '' ), ( place.address_components[2] && place.address_components[2].short_name || '' )].join( ' ' ); } // Set the default marker info window with address data. infoWindow.setContent( '
' + place.name + '
' + address ); infoWindow.open( g_map, g_marker ); // Run Geolocation. redux.field_objects.google_maps.geoLocate( g_autoComplete ); // Fill in address inputs. redux.field_objects.google_maps.fillInAddress( el, latitude, longitude, g_autoComplete ); } ); // Marker drag. google.maps.event.addListener( g_marker, 'drag', function ( event ) { document.getElementById( latitude ).value = event.latLng.lat(); document.getElementById( longitude ).value = event.latLng.lng(); } ); // End marker drag. google.maps.event.addListener( g_marker, 'dragend', function () { redux_change( el.find( '.redux_framework_google_maps' ) ); } ); // Zoom Changed. g_map.addListener( 'zoom_changed', function () { el.find( '.google_m_zoom_input' ).val( g_map.getZoom() ); } ); // Marker Info Window. infoWindow = new google.maps.InfoWindow(); google.maps.event.addListener( g_marker, 'click', function () { const marker_info = containerID + '_marker_info'; const infoValue = document.getElementById( marker_info ).value; if ( '' !== infoValue ) { infoWindow.setContent( infoValue ); infoWindow.open( g_map, g_marker ); } } ); }; /* FILL IN ADDRESS FUNCTION */ redux.field_objects.google_maps.fillInAddress = function ( el, latitude, longitude, g_autoComplete ) { // Set variables. const containerID = el.find( '.redux_framework_google_maps' ).attr( 'id' ); // What if someone only wants city, or state, ect... // gotta do it this way to check for the address! // Need to check each of the returned components to see what is returned. const componentForm = { street_number: 'short_name', route: 'long_name', locality: 'long_name', administrative_area_level_1: 'short_name', country: 'long_name', postal_code: 'short_name' }; // Get the place details from the autocomplete object. const place = g_autoComplete.getPlace(); let component; let i; let addressType; let _d_addressType; let val; let len; document.getElementById( latitude ).value = place.geometry.location.lat(); document.getElementById( longitude ).value = place.geometry.location.lng(); for ( component in componentForm ) { if ( componentForm.hasOwnProperty( component ) ) { // Push in the dynamic form element ID again. component = containerID + '_' + component; // Assign to proper place. document.getElementById( component ).value = ''; document.getElementById( component ).disabled = false; } } // Get each component of the address from the place details // and fill the corresponding field on the form. len = place.address_components.length; for ( i = 0; i < len; i += 1 ) { addressType = place.address_components[i].types[0]; if ( componentForm[addressType] ) { // Push in the dynamic form element ID again. _d_addressType = containerID + '_' + addressType; // Get the original. val = place.address_components[i][componentForm[addressType]]; // Assign to proper place. document.getElementById( _d_addressType ).value = val; } } }; redux.field_objects.google_maps.geoLocate = function ( g_autoComplete ) { if ( navigator.geolocation ) { navigator.geolocation.getCurrentPosition( function ( position ) { const geolocation = new google.maps.LatLng( position.coords.latitude, position.coords.longitude ); const circle = new google.maps.Circle( { center: geolocation, radius: position.coords.accuracy } ); g_autoComplete.setBounds( circle.getBounds() ); } ); } }; /* API BUTTON CLICK HANDLER */ redux.field_objects.google_maps.clickHandler = function ( el ) { // Find the API Key button and react on click. el.find( '.google_m_api_key_button' ).on( 'click', function () { // Find message wrapper. const wrapper = el.find( '.google_m_api_key_wrapper' ); if ( wrapper.is( ':visible' ) ) { // If the wrapper is visible, close it. wrapper.slideUp( 'fast', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } else { // If the wrapper is visible, open it. wrapper.slideDown( 'medium', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } } ); el.find( '.google_m_autocomplete' ).on( 'keypress', function ( e ) { if ( 13 === e.keyCode ) { e.preventDefault(); } } ); // Auto select autocomplete contents, // since Google doesn't do this inherently. el.find( '.google_m_autocomplete' ).on( 'click', function ( e ) { $( this ).trigger( 'focus' ); $( this ).trigger( 'select' ); e.preventDefault(); } ); }; } )( jQuery ); Classic Online Casino in Canada – Mobile App – Orchid Group
Warning: Undefined variable $encoded_url in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Deprecated: base64_decode(): Passing null to parameter #1 ($string) of type string is deprecated in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Classic Online Casino in Canada – Mobile App

When it comes to online casinos, few names are as iconic as Casino Classic. With a reputation for fairness, security, and a wide range of games, this Canadian-based online casino has been a favorite among players for years. And now, with the introduction of their mobile app, players can enjoy the classic casino experience on-the-go.

Casino Classic has been around since 2000, and in that time, they’ve built a reputation for offering a wide range of classic casino games, including slots, table games, and video poker. And with their mobile app, players can access all of these games, as well as exclusive mobile-only titles, from the comfort of their own home or on the go.

One of the things that sets Casino Classic apart from other online casinos is their commitment to fairness and security. They use 128-bit SSL encryption to ensure that all transactions are secure, and they’re licensed by the Kahnawake Gaming Commission, one of the most respected gaming authorities in the world. This means that players can trust that their personal and financial information is safe and secure.

But what really sets Casino Classic apart is their 50 Tours Gratuities program. This program rewards players with free credits and bonuses just for playing their favorite games. And with a new bonus every week, players can earn even more rewards and benefits. It’s the perfect way to get started with Casino Classic, and to make the most of their mobile app.

So why choose Casino Classic for your online gaming needs? For starters, their mobile app is easy to use and navigate, making it simple to find and play your favorite games on-the-go. And with a wide range of games to choose from, you’re sure to find something that suits your taste. Plus, with their commitment to fairness and security, you can trust that your personal and financial information is safe and secure. And with their 50 Tours Gratuities program, you can earn even more rewards and benefits just for playing your favorite games.

So why wait? Download the Casino Classic mobile app today and start playing your favorite games on-the-go. With their classic casino games, commitment to fairness and security, and 50 Tours Gratuities program, you’ll be sure to have a great time. And who knows, you might just win big!

Don’t forget to use your casino classic login and connexion details to access your account and start playing.

Remember, at Casino Classic, your safety and security are our top priority. That’s why we use 128-bit SSL encryption to ensure that all transactions are secure, and we’re licensed by the Kahnawake Gaming Commission, one of the most respected gaming authorities in the world.

Why Choose a Classic Online Casino in Canada?

When it comes to online gaming, Canadians have a plethora of options to choose from. However, with the rise of new and innovative online casinos, it’s easy to get lost in the sea of choices. That’s why we’re here to remind you of the timeless appeal of a classic online casino in Canada.

A classic online casino in Canada offers a unique gaming experience that’s hard to find elsewhere. For one, it provides a sense of familiarity and comfort, as players are already familiar with the games and the interface. This familiarity breeds trust, and players can be confident that they’re in good hands. Moreover, classic online casinos often have a reputation for being reliable and secure, which is essential for players who want to ensure their personal and financial information is protected.

Another significant advantage of a classic online casino in Canada is the variety of games it offers. From the classic slots and table games to the more modern and innovative options, a classic online casino has something for everyone. This variety ensures that players can always find a game that suits their mood and preferences. Furthermore, classic online casinos often have a wide range of payment options, making it easy for players to deposit and withdraw funds.

In addition to the games and payment options, a classic online casino in Canada also offers a range of promotions and bonuses. These can include welcome bonuses, free spins, and loyalty programs, which can help players increase their chances of winning and enhance their overall gaming experience. Moreover, classic online casinos often have a dedicated customer support team, which is available 24/7 to help players with any issues or concerns they may have.

So, why choose a classic online casino in Canada? The answer is simple: it offers a unique combination of familiarity, reliability, variety, and promotions that’s hard to find elsewhere. Whether you’re a seasoned gamer or just starting out, a classic online casino in Canada is the perfect place to start your gaming journey.

What to Expect from a Classic Online Casino Mobile App

When it comes to online casinos, many players are looking for a classic experience that combines the thrill of playing at a traditional casino with the convenience of playing from the comfort of their own homes. A classic online casino mobile app is designed to provide just that, offering a range of games and features that are reminiscent of the traditional casino experience.

One of the key benefits of a classic online casino mobile app is the ability to play a wide range of games, including slots, table games, and video poker. These games are often designed to look and feel like their traditional counterparts, with realistic graphics and sound effects that help to create an immersive experience. In addition, many classic online casinos offer a range of progressive jackpot games, which offer the chance to win large sums of money.

Games and Features

  • Slots: From classic three-reel slots to more complex five-reel games, there’s something for everyone at a classic online casino.
  • Table Games: From blackjack to roulette, craps to baccarat, there’s a range of table games to choose from.
  • Video Poker: For those who prefer a more strategic game, video poker offers a range of options, from classic Jacks or Better to more complex games like Deuces Wild.
  • Progressive Jackpots: Many classic online casinos offer progressive jackpot games, which offer the chance to win large sums of money.

In addition to the games themselves, a classic online casino mobile app often includes a range of features designed to enhance the player’s experience. These may include:

  • Live Chat Support: Many classic online casinos offer live chat support, allowing players to get help and assistance quickly and easily.
  • Mobile Optimization: With many players accessing online casinos on the go, a classic online casino mobile app is designed to be easy to use and navigate on a range of devices.
  • Secure Payment Options: Classic online casinos often offer a range of secure payment options, including credit cards, e-wallets, and more.
  • Regular Promotions: Many classic online casinos offer regular promotions and bonuses, including welcome bonuses, reload bonuses, and more.

Why Choose a Classic Online Casino Mobile App?

  • Convenience: With a classic online casino mobile app, players can access their favorite games from anywhere, at any time.
  • Range of Games: Classic online casinos often offer a wide range of games, including slots, table games, and video poker.
  • Secure and Reliable: Classic online casinos are designed to be secure and reliable, with robust payment options and 24/7 customer support.
  • Classic Casino Experience: A classic online casino mobile app is designed to provide a traditional casino experience, with realistic graphics and sound effects.
  • In conclusion, a classic online casino mobile app offers a range of benefits and features that are designed to provide a traditional casino experience with the convenience of playing from the comfort of your own home. With a wide range of games, secure payment options, and regular promotions, there’s something for everyone at a classic online casino.

    So why not give it a try? Sign up for a classic online casino mobile app today and start playing your favorite games in no time. And don’t forget to take advantage of the welcome bonus and other promotions available to new players. At a classic online casino, the fun never stops!

    Remember, at a classic online casino, you can enjoy a range of games, including:

    • Casino classic connexion
    • Casino classic 50 tours gratuits
    • Casino classic Canada
    • Casino classic games
    • Classic casino
    • Casino classic login

    How to Get Started with a Classic Online Casino Mobile App in Canada

    Getting started with a classic online casino mobile app in Canada is a straightforward process. With the rise of mobile gaming, it’s now easier than ever to access your favorite casino games on the go. In this article, we’ll guide you through the steps to get started with a classic online casino mobile app in Canada.

    Step 1: Choose Your Casino Classic

    The first step is to choose a reputable online casino that offers a classic mobile app. Look for casinos that are licensed and regulated in Canada, such as Casino Classic Canada. Make sure to read reviews and check the casino’s reputation before signing up.

    Once you’ve chosen your casino, create an account by filling out the registration form. You’ll need to provide some basic information, such as your name, email address, and password. Be sure to read and agree to the casino’s terms and conditions before completing the registration process.

    Step 2: Download and Install the Mobile App

    After creating your account, you can download and install the mobile app from the casino’s website or the App Store. The app is usually available for both iOS and Android devices. Once the app is installed, you can log in using your username and password.

    Once you’re logged in, you can access a wide range of classic casino games, including slots, table games, and video poker. You can also take advantage of the casino’s welcome bonus, which often includes a 50% match bonus on your first deposit, up to a maximum of $200. This means you can get up to $400 to play with, just for signing up!

    To get started, simply click on the “Casino Classic” button and select the game you want to play. You can also use the search function to find a specific game. Once you’ve selected a game, you can start playing immediately. The app is designed to be user-friendly, so you shouldn’t have any trouble navigating the different games and features.

    One of the benefits of playing at a classic online casino is the ability to play for free. Many of the games are available in demo mode, which means you can try them out without risking any real money. This is a great way to get a feel for the games and see which ones you like best.

    When you’re ready to start playing for real money, you can make a deposit using a variety of payment methods, including credit cards, debit cards, and e-wallets. The minimum deposit is usually around $20, and the maximum deposit is usually around $1,000. You can also set a daily or weekly deposit limit to help you manage your bankroll.

    Finally, don’t forget to take advantage of the casino’s loyalty program, which rewards you for your deposits and gameplay. You can earn points and redeem them for cash, bonuses, or other rewards. The more you play, the more you can earn, so be sure to take advantage of this program to get the most out of your gaming experience.

    In conclusion, getting started with a classic online casino mobile app in Canada is a simple process. By following these steps, you can access a wide range of classic casino games, take advantage of welcome bonuses, and start playing for real money. Remember to always read and agree to the casino’s terms and conditions, and to set a budget for yourself to ensure a fun and responsible gaming experience.

    Casino Classic Canada is a great option for those looking for a classic online casino experience. With its wide range of games, generous welcome bonus, and user-friendly mobile app, it’s a great choice for anyone looking to get started with online gaming. So why not give it a try? Sign up today and start playing for free or for real money!

    Casino Classic 50 Tours Gratuits is another great option for those looking for a classic online casino experience. With its wide range of games, generous welcome bonus, and user-friendly mobile app, it’s a great choice for anyone looking to get started with online gaming. So why not give it a try? Sign up today and start playing for free or for real money!

    Design and Develop by Ovatheme